docs(release): add release process guide for internal contributors#19543
docs(release): add release process guide for internal contributors#19543jrainville merged 4 commits intomasterfrom
Conversation
✔️ status-desktop/e2e/prs-windowsPR19543 🔹 ~24 min 🔹 3729a85 🔹 📦 tests/e2e-windows package |
noeliaSD
left a comment
There was a problem hiding this comment.
Thanks for the update! I’ve added one comment, and everything else LGTM.
|
|
||
| 9. Fixes for issues identified during the RC phase **must** be worked on and committed on the release branch **first**. | ||
|
|
||
| 10. Once a fix has been applied to the release branch, it **must** be ported to the master branch. |
There was a problem hiding this comment.
I would also clarify who is responsible for this step. Should the same developer who merged the commits into the release branch create the corresponding cherry-pick PR to master once it’s integrated? Or will there be a designated person during this phase to review everything added to the release and ensure it is properly ported back to master?
✔️ status-desktop/prs/linux/x86_64/tests-ui/PR-19543#2 🔹 ~13 min 🔹 7bb8695 🔹 📦 tests/ui package |
7bb8695 to
6204fc0
Compare
✔️ status-desktop/prs/android/arm64/package/PR-19543#3 🔹 ~9 min 26 sec 🔹 6204fc0 🔹 📦 android/arm64 package |
✔️ status-desktop/prs/linux/x86_64/tests-ui/PR-19543#3 🔹 ~15 min 🔹 6204fc0 🔹 📦 tests/ui package |
✔️ status-desktop/e2e/prs-windowsPR19543 🔹 ~24 min 🔹 7bb8695 🔹 📦 tests/e2e-windows package |
✔️ status-desktop/e2e/prspr19543 🔹 ~15 min 🔹 6204fc0 🔹 📦 tests/e2e package |
✔️ status-desktop/e2e/prs-windowsPR19543 🔹 ~22 min 🔹 6204fc0 🔹 📦 tests/e2e-windows package |
Jenkins BuildsClick to see older builds (56)
|
| 3. Only bug fixes **must** be provided to the release branch. | ||
|
|
||
| 4. Moreover, only **critical** bug fixes **should** be added to the [Release Board](https://github.com/orgs/status-im/projects/97/views/1) and committed to the release branch. | ||
| 1. Critical bugs are issues that affect the **behaviour** of the features. |
There was a problem hiding this comment.
I'd argue critical bugs are first and foremost issues that affect:
- security
- potential data or funds loss
- crashes
Everything else is "severe" at best imho :)
| 10. Once a fix has been applied to the release branch, it **must** be ported to the master branch by the author of the commit. | ||
|
|
||
| 11. A new RC build **can** be triggered every day, if there are new fixes in the release branch. | ||
|
|
There was a problem hiding this comment.
I'm missing a short note about how we tag and version the releases
|
|
||
| The remaining features listed on the [Roadmap](https://github.com/status-im/status-app/blob/master/docs/roadmap.md) on the same milestone, but that were not identified as **key**, will simply be pushed to the next milestone. | ||
|
|
||
| All new features **must** implement a **feature flag**. Therefore, unfinished features **must not** affect master and the release. |
There was a problem hiding this comment.
I'd say unfinished features are fine in master?
There was a problem hiding this comment.
Yeah, I guess I could refine the wording. I meant that if a feature is unfinished, it shouldn't make master break or anything severe, because the feature flag would prevent that.
One could argue that master could be temporarily broken, but we should strive for that to never happen.
micieslak
left a comment
There was a problem hiding this comment.
Nice clarification! Some very minor typos only.
| @@ -0,0 +1,69 @@ | |||
| # Release Process Guide | |||
|
|
|||
| This guide is meant to explain the flow and rules of the release process, ie the period when we cut a release branch off the master branch in prevision of releasing it to users. Release Candidates (RC) are provided to test the Release. | |||
There was a problem hiding this comment.
| This guide is meant to explain the flow and rules of the release process, ie the period when we cut a release branch off the master branch in prevision of releasing it to users. Release Candidates (RC) are provided to test the Release. | |
| This guide is meant to explain the flow and rules of the release process, i.e. the period when we cut a release branch off the master branch in prevision of releasing it to users. Release Candidates (RC) are provided to test the Release. |
| 2. potential data or funds loss | ||
| 3. crashes | ||
| 4. full regressions | ||
| 5. One or more Testing days **should** be done by the entire Status team to find any regressions. |
There was a problem hiding this comment.
| 5. One or more Testing days **should** be done by the entire Status team to find any regressions. | |
| 5. One or more testing days **should** be done by the entire Status team to find any regressions. |
|
|
||
| 7. Code coverage does **not** need to be met on the release branch. | ||
|
|
||
| 8. Features **must not** be allowed to be added to the release branch under any circumstances. |
There was a problem hiding this comment.
| 8. Features **must not** be allowed to be added to the release branch under any circumstances. | |
| 8. Features **must not** be allowed to be added to the release branch under any circumstances. |
|
|
||
| 8. Features **must not** be allowed to be added to the release branch under any circumstances. | ||
|
|
||
| 9. Fixes for issues identified during the RC phase **must** be worked on and committed on the release branch **first**. |
There was a problem hiding this comment.
| 9. Fixes for issues identified during the RC phase **must** be worked on and committed on the release branch **first**. | |
| 9. Fixes for issues identified during the RC phase **must** be worked on and committed on the release branch **first**. |
| These guides are meant to be used by internal contributors. If you're an external contributor, you can also read them to get a sense of how we work, but you do not have to apply those guidelines. | ||
|
|
||
| - [Release Process Guide](/docs/internal/release-process.md) | ||
| - Dev-Design-Product-QA Workflow (Comming soon) |
There was a problem hiding this comment.
| - Dev-Design-Product-QA Workflow (Comming soon) | |
| - Dev-Design-Product-QA Workflow (Coming soon) |
ceae851 to
f9c1ddc
Compare
Adds a new internal guide called "Release Process Guide" detailing how released ought to be done.
Please review and give any feedback